package com.ymttest.database.sharding.db.sharding.model;

import java.math.BigDecimal;
import java.util.Date;

public class SellerRefundFundDetailPo extends SellerRefundFundDetailKey {
    /**
     * biz_type INTEGER(10) 必填<br>
     * 1-退货退款 2-取消订单 3-批量取消 4-快速退款
     */
    private Integer bizType;

    /**
     * total_amount DECIMAL(18,2) 必填<br>
     * 从买手账户扣回总金额
     */
    private BigDecimal totalAmount;

    /**
     * deducted_coupon_amount DECIMAL(18,2) 必填<br>
     * 从买手已结算金额扣回优惠券金额
     */
    private BigDecimal deductedCouponAmount;

    /**
     * deducted_promotion_amount DECIMAL(18,2)<br>
     * 从买手已结算金额扣回平台优惠金额
     */
    private BigDecimal deductedPromotionAmount;

    /**
     * thirdparty_discount DECIMAL(18,2) 必填<br>
     * 扣回第三方优惠金额
     */
    private BigDecimal thirdpartyDiscount;

    /**
     * refund_status INTEGER(10) 必填<br>
     * 1-退款中 2-退款完成 3-退款失败
     */
    private Integer refundStatus;

    /**
     * retry_times INTEGER(10) 默认值[0] 必填<br>
     * 执行次数
     */
    private Integer retryTimes;

    /**
     * memo VARCHAR(100)<br>
     * 记录扣款返回retcode
     */
    private String memo;
    
    /**
     * rebate_amount DECIMAL(18,2)<br>
     * 从买手账户扣回返点金额
     */
    private BigDecimal rebateAmount;

    /**
     * add_time TIMESTAMP(19) 默认值[CURRENT_TIMESTAMP] 必填<br>
     * 新增时间
     */
    private Date addTime;

    /**
     * update_time TIMESTAMP(19) 默认值[CURRENT_TIMESTAMP] 必填<br>
     * 更新时间
     */
    private Date updateTime;

    /**
     * biz_type INTEGER(10) 必填<br>
     * 获得 1-退货退款 2-取消订单 3-批量取消 4-快速退款
     */
    public Integer getBizType() {
        return bizType;
    }

    /**
     * biz_type INTEGER(10) 必填<br>
     * 设置 1-退货退款 2-取消订单 3-批量取消 4-快速退款
     */
    public void setBizType(Integer bizType) {
        this.bizType = bizType;
    }

    /**
     * total_amount DECIMAL(18,2) 必填<br>
     * 获得 从买手账户扣回总金额
     */
    public BigDecimal getTotalAmount() {
        return totalAmount;
    }

    /**
     * total_amount DECIMAL(18,2) 必填<br>
     * 设置 从买手账户扣回总金额
     */
    public void setTotalAmount(BigDecimal totalAmount) {
        this.totalAmount = totalAmount;
    }

    /**
     * deducted_coupon_amount DECIMAL(18,2) 必填<br>
     * 获得 从买手已结算金额扣回优惠券金额
     */
    public BigDecimal getDeductedCouponAmount() {
        return deductedCouponAmount;
    }

    /**
     * deducted_coupon_amount DECIMAL(18,2) 必填<br>
     * 设置 从买手已结算金额扣回优惠券金额
     */
    public void setDeductedCouponAmount(BigDecimal deductedCouponAmount) {
        this.deductedCouponAmount = deductedCouponAmount;
    }

    /**
     * deducted_promotion_amount DECIMAL(18,2)<br>
     * 获得 从买手已结算金额扣回平台优惠金额
     */
    public BigDecimal getDeductedPromotionAmount() {
        return deductedPromotionAmount;
    }

    /**
     * deducted_promotion_amount DECIMAL(18,2)<br>
     * 设置 从买手已结算金额扣回平台优惠金额
     */
    public void setDeductedPromotionAmount(BigDecimal deductedPromotionAmount) {
        this.deductedPromotionAmount = deductedPromotionAmount;
    }

    /**
     * thirdparty_discount DECIMAL(18,2) 必填<br>
     * 获得 扣回第三方优惠金额
     */
    public BigDecimal getThirdpartyDiscount() {
        return thirdpartyDiscount;
    }

    /**
     * thirdparty_discount DECIMAL(18,2) 必填<br>
     * 设置 扣回第三方优惠金额
     */
    public void setThirdpartyDiscount(BigDecimal thirdpartyDiscount) {
        this.thirdpartyDiscount = thirdpartyDiscount;
    }

    /**
     * refund_status INTEGER(10) 必填<br>
     * 获得 1-退款中 2-退款完成 3-退款失败
     */
    public Integer getRefundStatus() {
        return refundStatus;
    }

    /**
     * refund_status INTEGER(10) 必填<br>
     * 设置 1-退款中 2-退款完成 3-退款失败
     */
    public void setRefundStatus(Integer refundStatus) {
        this.refundStatus = refundStatus;
    }

    /**
     * retry_times INTEGER(10) 默认值[0] 必填<br>
     * 获得 执行次数
     */
    public Integer getRetryTimes() {
        return retryTimes;
    }

    /**
     * retry_times INTEGER(10) 默认值[0] 必填<br>
     * 设置 执行次数
     */
    public void setRetryTimes(Integer retryTimes) {
        this.retryTimes = retryTimes;
    }

    /**
     * memo VARCHAR(100)<br>
     * 获得 记录扣款返回retcode
     */
    public String getMemo() {
        return memo;
    }

    /**
     * memo VARCHAR(100)<br>
     * 设置 记录扣款返回retcode
     */
    public void setMemo(String memo) {
        this.memo = memo == null ? null : memo.trim();
    }

    /**
     * add_time TIMESTAMP(19) 默认值[CURRENT_TIMESTAMP] 必填<br>
     * 获得 新增时间
     */
    public Date getAddTime() {
        return addTime;
    }

    /**
     * add_time TIMESTAMP(19) 默认值[CURRENT_TIMESTAMP] 必填<br>
     * 设置 新增时间
     */
    public void setAddTime(Date addTime) {
        this.addTime = addTime;
    }

    /**
     * update_time TIMESTAMP(19) 默认值[CURRENT_TIMESTAMP] 必填<br>
     * 获得 更新时间
     */
    public Date getUpdateTime() {
        return updateTime;
    }

    /**
     * update_time TIMESTAMP(19) 默认值[CURRENT_TIMESTAMP] 必填<br>
     * 设置 更新时间
     */
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public BigDecimal getRebateAmount() {
		return rebateAmount;
	}

	public void setRebateAmount(BigDecimal rebateAmount) {
		this.rebateAmount = rebateAmount;
	}

	@Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", bizType=").append(bizType);
        sb.append(", totalAmount=").append(totalAmount);
        sb.append(", deductedCouponAmount=").append(deductedCouponAmount);
        sb.append(", deductedPromotionAmount=").append(deductedPromotionAmount);
        sb.append(", thirdpartyDiscount=").append(thirdpartyDiscount);
        sb.append(", refundStatus=").append(refundStatus);
        sb.append(", retryTimes=").append(retryTimes);
        sb.append(", memo=").append(memo);
        sb.append(", rebateAmount=").append(this.rebateAmount);
        sb.append(", addTime=").append(addTime);
        sb.append(", updateTime=").append(updateTime);
        sb.append("]");
        return sb.toString();
    }
}